package EjerciciosClasesHerenciaExcepciones.Ex1;

public class Deporte {

	private String nombre;
	private boolean equipo;
	private int nJugadores;
	private String descripcion;
	
	public Deporte(){
		
	}
	
	public Deporte(String nombre, boolean equipo, int nJugadores, String descripcion) throws DeporteEquipoException, DeporteInidividualException {
		this.nombre = nombre;
		this.equipo = equipo;
		
		if (equipo && nJugadores < 2){
			DeporteEquipoException ex = new DeporteEquipoException("Intentando crear un deporte de equipo de un solo jugador");
			throw ex;
		}
		
		if (!equipo && nJugadores > 1){
			DeporteInidividualException ex = new DeporteInidividualException("Intentando crear un deporte individual con mas de un jugador");
			throw ex;
		}
		this.nJugadores = nJugadores;
		this.descripcion = descripcion;
	}

	public String getNombre() {
		return nombre;
	}
	public void setNombre(String nombre) {
		this.nombre = nombre;
	}
	public boolean isEquipo() {
		return equipo;
	}
	public void setEquipo(boolean equipo) {
		this.equipo = equipo;
	}
	public int getnJugadores() {
		return nJugadores;
	}
	public void setnJugadores(int nJugadores) throws DeporteEquipoException, DeporteInidividualException{
		if (this.equipo && nJugadores < 2){
			DeporteEquipoException ex = new DeporteEquipoException("Intentando crear un deporte de equipo de un solo jugador");
			throw ex;
		}
		if (!equipo && nJugadores > 1){
			DeporteInidividualException ex = new DeporteInidividualException("Intentando crear un deporte individual con mas de un jugador");
			throw ex;
		}
		this.nJugadores = nJugadores;
	}
	public String getDescripcion() {
		return descripcion;
	}
	public void setDescripcion(String descripcion) {
		this.descripcion = descripcion;
	}

	@Override
	public String toString() {
		return "Deporte clase padre \t" + nombre + "\t" + equipo+ "\t" + nJugadores + "\t" + descripcion;
	}
	
	
}
